From 8504890867b70c9638a07c62f478374ad93961e0 Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Thu, 28 Aug 2014 14:12:51 +0200 Subject: [PATCH] wayland: Add private API to retrieve the drag window for a drag context On wayland the DnD surface must be created early when starting the drag operation, so offer API for GTK+ to get the GdkWindow used as a DnD surface on the drag operation. https://bugzilla.gnome.org/show_bug.cgi?id=697855 --- gdk/wayland/gdkdnd-wayland.c | 9 +++++++++ gdk/wayland/gdkwaylandselection.h | 4 ++++ 2 files changed, 13 insertions(+) diff --git a/gdk/wayland/gdkdnd-wayland.c b/gdk/wayland/gdkdnd-wayland.c index fef24c6678..e68569ad15 100644 --- a/gdk/wayland/gdkdnd-wayland.c +++ b/gdk/wayland/gdkdnd-wayland.c @@ -502,3 +502,12 @@ gdk_wayland_drag_context_undo_grab (GdkDragContext *context) _gdk_wayland_display_deliver_event (gdk_device_get_display (device), event); } + +GdkWindow * +gdk_wayland_drag_context_get_dnd_window (GdkDragContext *context) +{ + GdkWaylandDragContext *wayland_context; + + wayland_context = GDK_WAYLAND_DRAG_CONTEXT (context); + return wayland_context->dnd_window; +} diff --git a/gdk/wayland/gdkwaylandselection.h b/gdk/wayland/gdkwaylandselection.h index 90474c0305..a9d42cc6c8 100644 --- a/gdk/wayland/gdkwaylandselection.h +++ b/gdk/wayland/gdkwaylandselection.h @@ -47,6 +47,10 @@ GDK_AVAILABLE_IN_ALL void gdk_wayland_selection_clear_targets (GdkAtom selection); +#define gdk_wayland_drag_context_get_dnd_window gdk_wayland_drag_context_get_dnd_window_libgtk_only +GDK_AVAILABLE_IN_ALL +GdkWindow * +gdk_wayland_drag_context_get_dnd_window (GdkDragContext *context); #endif -- 2.30.2